home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 2 / Atari Mega Archive CD - Volume 2.iso / minix / up1510b.tgz / up1510b / src / commands / kill.c < prev    next >
C/C++ Source or Header  |  1990-07-23  |  601b  |  38 lines

  1. /* kill - send a signal to a process    Author: Adri Koppes  */
  2.  
  3. #include <sys/types.h>
  4. #include <signal.h>
  5.  
  6. extern char *itoa();
  7.  
  8. main(argc, argv)
  9. int argc;
  10. char **argv;
  11. {
  12.   int proc, signal = SIGTERM;
  13.  
  14.   if (argc < 2) usage();
  15.   if (argc > 1 && *argv[1] == '-') {
  16.     signal = atoi(&argv[1][1]);
  17.     if (!signal) usage();
  18.     argv++;
  19.     argc--;
  20.   }
  21.   while (--argc) {
  22.     argv++;
  23.     proc = atoi(*argv);
  24.     if (!proc && strcmp(*argv, "0")) usage();
  25.     if (kill(proc, signal)) {
  26.         prints("Kill: %s no such process\n", itoa(proc));
  27.         exit(1);
  28.     }
  29.   }
  30.   exit(0);
  31. }
  32.  
  33. usage()
  34. {
  35.   prints("Usage: kill [-sig] pid\n");
  36.   exit(1);
  37. }
  38.